#ifndef LUADEBUGDEFINES_H
#define LUADEBUGDEFINES_H

#define INIT_LUA_DEBUG { 0, 0, 0, 0, 0, 0, 0, 0, 0, {0}, 0 }

enum LuaDebuggeeEventType
{
    LUA_DEBUGGEE_EVENT_NONE = 0,
    LUA_DEBUGGEE_EVENT_BREAK,
    LUA_DEBUGGEE_EVENT_PRINT,
    LUA_DEBUGGEE_EVENT_ERROR,
    LUA_DEBUGGEE_EVENT_EXIT,
    LUA_DEBUGGEE_EVENT_STACK_ENUM,
    LUA_DEBUGGEE_EVENT_STACK_ENTRY_ENUM,
    LUA_DEBUGGEE_EVENT_TABLE_ENUM,
    LUA_DEBUGGEE_EVENT_EVALUATE_EXPR,
};

enum LuaDebuggerCommandType
{
    LUA_DEBUGGER_CMD_NONE = 0,
    LUA_DEBUGGER_CMD_ADD_BREAKPOINT = 100,
    LUA_DEBUGGER_CMD_REMOVE_BREAKPOINT,
    LUA_DEBUGGER_CMD_CLEAR_ALL_BREAKPOINTS,
    LUA_DEBUGGER_CMD_DEBUG_STEP,
    LUA_DEBUGGER_CMD_DEBUG_STEPOVER,
    LUA_DEBUGGER_CMD_DEBUG_STEPOUT,
    LUA_DEBUGGER_CMD_DEBUG_CONTINUE,
    LUA_DEBUGGER_CMD_DEBUG_BREAK,
    LUA_DEBUGGER_CMD_RESET,
    LUA_DEBUGGER_CMD_ENUMERATE_STACK,
    LUA_DEBUGGER_CMD_ENUMERATE_STACK_ENTRY,
    LUA_DEBUGGER_CMD_ENUMERATE_TABLE,
    LUA_DEBUGGER_CMD_EVALUATE_EXPR,
};

#endif
